package com.ltedu.course.mapper;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.ltedu.course.domain.Course;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ltedu.course.domain.dto.CourseDO;
import com.ltedu.course.domain.dto.CourseInfoDO;
import org.apache.ibatis.annotations.Param;

/**
 * <p>
 * 课程表 Mapper 接口
 * </p>
 *
 * @author Jerry
 * @since 2020-11-26
 */
public interface CourseMapper extends BaseMapper<Course> {

    /**
     * 分页查询课程列表
     *
     * @param coursePage
     * @param queryWrapper
     * @return {@link IPage<Course>}
     */
    IPage<CourseDO> selectCoursePageList(IPage<Course> coursePage, @Param(Constants.WRAPPER)QueryWrapper<Course> queryWrapper);

    /**
     * 根据id获取课程信息
     *
     * @param courseId 进程id
     * @return {@link CourseDO}
     */
    CourseDO selectCourseById(Long courseId);

    /**
     * 根据id获取课程详情
     *
     * @param courseId 进程id
     * @return {@link CourseInfoDO}
     */
    CourseInfoDO selectCourseInfoById(Long courseId);
}
